Below are various charts that will be used as a quick dashboard for various monetization strategies. This includes flat price of ULSD and CL, as CL is a major component in ULSD production, the current crack spread between ULSD and CL, and the time spread between the first and second contract of ULSD.
A dashboard for the March and April contracts is also included for the various monetization strategies as there is some seasonality in ULSD demand. This seasonality can lead to profitable trading strategies based on inventories at the end of March and into April.
The main futures contracts used to trade ULSD will be the NY Harbor ULSD Futures (ticker HO). These contracts are standardized to 42,000 gallons (1,000 barrels). The ULSD delivery location is New York Harbor with options for delivery into the buyer’s barge, tanker, or pipeline if they are able. The product must meet the specification of the Colonial Pipeline’s Fungible Grade 62 for Ultra Low Sulfur Diesel and must be designated for sale in accordance with U.S. Environmental Protection Agency regulations. As of 2016, almost all petroleum-based diesel fuel available in the UK, mainland Europe, and North America is ultra low sulphur.
NY Harbor ULSD Futures Handbook: https://www.cmegroup.com/content/dam/cmegroup/rulebook/NYMEX/1a/150.pdf
ULSD is also commonly referred to as distillate and is the second-most consumed petroleum product in the United States. In addition to its use as a transportation fuel, distillate is also consumed for heating and power generation purposes. Distillate’s use as a heating fuel drives the seasonal pattern of higher consumption during the winter months. Distillate consumption is affected by economic growth and weather conditions as well as vehicle efficiency and miles traveled of heavy-duty vehicles.
Components of the price you see at the pumps: The cost of crude oil purchased by refineries, refining costs, distribution and marketing costs, and state taxes all influence the price you see at the pumps.
Following a meeting with Professor Cote we determined that the March - April crack spread was too risky and difficult to model leading us to reverse our exposure in those months.
There have been many instances of inventory draws over the past few months coupled with low storage from the Summer months. This lead us to believe that in the near term there would be limited likelihood that inventories would increase substantially prior to winter and that prices would continue to face upward pressure. In the last week we saw inventories build substantially in the U.S. leading to an increase in the days of supply available which contradicted our trading strategy that we entered into on November 1st. Due to these new developments we reversed our long time spread position and are now short the time spread given that inventories are now likely to build substancially going into Winter.
Our current exposure is short the time spread between the two closest contracts of ULSD based on the belief that rising inventory in the near-term will lead to lower prices in the closest contract. We are short 25 December ULSD contracts and long 25 January ULSD contracts.
November 1: When running regression analysis between the time spread of the two closest forward contracts and the days of inventory of ULSD we found that the current c1c2 time spread is on the higher side of the confidence interval. Given our market view that supply in the short-term will be inelastic relative to growing demand we anticipate continued storage draws leading to lower days of supply and a growing time spread. With days of supply falling to 30 or even less as the winter progresses the potential upside from monetizing the time spread could increase to above a dollar from its current 0.6 range in the market. To monetize this strategy we will be long 20 December 2021 and short 20 January 2022 ULSD contracts. The regression used for determining the reasonable range of the time spread based on historical data can be found in the Appendix.
November 8: Reversed our Long Crack Spread position due to recommendations that it is quite volatile and modelling is difficult to build and maintain.
November 9: As it appears that storage builds are increasing going into the winter months we have decided to reverse our long December - January time spread strategy and instead short the time spread as inventories are likely to build over the next few weeks. This will lead to higher days of supply in the near-term and will decrease any upside that was available from being long the time spread. We have instead decided to be short 25 December ULSD contracts and long 25 January ULSD contracts in an attempt to benefit from the rising inventory levels in the near-term and the downward pressure it should put on prices.
Production: Most of the diesel fuel produced and consumed in the US is refined from crude oil at petroleum refineries within the US. These refineries produce an average of 11 to 12 gallons of diesel fuel for every 42 gallon barrel of crude. Production decisions by refineries are also effected by the spread between diesel and gasoline prices as when the spread widens refineries increase the amount of diesel that they produce relative to gasoline. The standard crack-spread at refineries is generally 3-2-1, meaning that for 3 barrels of crude that 2 will be refined into gasoline and 1 will be refined into ULSD. In our SD balance Supply represents U.S. domestic production of ULSD. ULSD production is vitally important to the functioning of the U.S. economy as it is the dominant fuel for freight transportation and heavy machinery.
In the short term we believe that supply is relatively inelastic with production in the U.S. accounting for roughly 4.8 million barrels fo ULSD a day. In the longer term production is more elastic allowing refineries to increase the amount of ULSD that they produce if market conditions are accommodative. This would include higher ULSD prices from heightened demand. From our SD balance we can see the weekly changes in U.S. supply from refineries.
Consumption: More than 8 million hones in New England and the Central Atlantic Region of the US lack access to natural gas so they use Heating Oil (ULSD). This makes one of ULSD’s end markets consumers those who require ULSD for their home heating needs. Due to this there is some seasonality in pricing during the cold winter months. Residential heating oil consumption peaked in the 1970’s and declined nearly every year since. 81% of residential heating use is concentrated in the US Northeast including New York, Pennsylvania, and New England. Diesel is mainly used as a transport fuel and consumption is impacted by the underlying economic conditions, fuel efficiency, and miles traveled by heavy duty vehicles. In 2020, diesel fuel consumption was about 44.61 billion gallons which averages to about 3 million barrels per day. PADD 3 has been a net exported of diesel since 2001 which is logical given the number of refineries located in the US Gulf Coast and the fuel needs across the US. In our SD balance Demand represents the consumption of ULSD. Demand is important as it gives us a sense of the daily needs of the U.S. for heating and transportation.
In the short term we see demand increasing going into the holiday season as supply chain issues will require higher volumes of transport of freight across the US. Additionally, we are headed into the colder months of the year which will contribute to excess demand for home heating needs in the U.S. Northwest. In the longer term we believe that demand will stabilize following the winter season and after much of the U.S. supply chain congestion has been remedied. From our SD balance we are able to see weekly changes in the demand for ULSD.
Net Exports: The U.S. is a net exporter of ULSD meaning that they export far more ULSD than they import. This is important as domestic production is being directed to producing ULSD which will be sent internationally instead of for meeting domestic demand and building inventories. Our SD balance shows both imports and exports for the U.S. meaning that we can analyze them separately. International trade of ULSD is very important as ULSD is being redirected to outside markets instead of being used domestically and is materially important for analyzing inventory builds and draws.
In the short term we believe that exports will decrease relative to imports to attempt and meet domestic needs during the winter months but that this reduction will be short-lived and is not likely to be enough to satisfy demand needs.
Storage: Inventories of ULSD are vitally important in the U.S. as higher demand in the winter months due to home heating needs can cause inventory draws. Consistent draws can lead to lower inventories and will eventually put upward pressure on prices to attract ULSD to that market. Inventory draws and builds are shown in the SD balance as Storage. Generally, during the summer months and approaching the winter months the U.S. will build up inventories of ULSD in preparation for higher demand in the winter.
In 2021 it appears that due to high demand and exports relative to supply inventories were not built up. In the short term we expect that the lack of inventory builds will lead to higher prices for ULSD in the near term, especially in the later winter months closer to March. In the longer term as supply chain congestion is resolved and demand lessens for home heating we expect inventories to begin to build as they do typically.
Transportation: Most diesel fuel moves by pipeline from refineries and ports to terminals near major consuming areas. Barges and trains also move diesel to terminals. Trucks transport the diesel fuel from the terminals to retail service stations and to large volume consumers such as fleet operators. Most of the U.S. refining capacity can be found in PADD 3 around the Gulf Coast and as such PADD 3 is a net exporter of ULSD. A large amount of demand in the colder winter months is located in PADD 1 and due to their low refining capacity they require imports of ULSD from refineries concentrated in PADD 3.
The forward curve for ULSD is provided to get a sense of the state of the market. Currently, the market is in backwardation, meaning that futures prices are decreases with increases in delivery timing.
Both historical ULSD inventories and days of supply have been charted to get a sense of where the market currently is and how it has been trending. Distillate inventories are also forecasted by EIA so there are data points as far as the end of 2022. Days of supply metrics are all based on historically realized values and are updated weekly.
What we see currently in the ULSD market is that refinery output for the next few quarters is constrained with any increases in domestic US supply being the result of a decrease in net exports in the short-term. In this sense domestic supply is only expected to increase by ~300 thousand barrels a day going into the winter season.
With supply accounted for we need to make some assumptions about demand in the short and long term. In the short term we expect to see higher demand as a result of the cold winter months and home heating requirements, along with a continue push to solve supply chain issues across the US which would require an increase in freight transport during the holiday shopping season. Each of these factors leads us to believe that demand for ULSD in the next few quarters will be strong and outstrip US supply in the near-term.
US distillate oil days of supply has been on a downward trend since late January 2021 with less than 36 days of supply since August.
Going into the winter months we would expect to see inventories increasing but with the prolonged downward trend it appears that inventory builds will solely be driven by changes in net exports as supply from refineries appears to be inelastic. If demand in the US market during the winter months increases more than the change in net exports we can expect to see increases in inventory draws and decreases in days of distillate supply.
As we believe that demand will outstrip supply during the winter season we will want to be long during this period. With increased inelastic demand due to transport needs and higher demand due to heating oil needs in the winter coupled with limited inventory builds during the summer we should see higher inventory draws leading to lower days of supply. The anticipated downward trend in days of supply during the winter will likely be the catalyst for higher ULSD prices. In anticipation of these higher prices as inventories decline we could go long the flat price for ULSD, long ULSD and short CL, or long ULSD in a month and short ULSD in the following months.
The chart below shows historical days of supply along with the three main monetization strategies of flat price, time spread, and crack spread.
There are a few ways for us to profit off of our market call including making trades on flat price, time spread, and crack spread. With the historical volatility of flat price being quite high we would prefer to make trades based on other strategies. We considered a time spread that was long a contract expiring within the next two quarters and being short a contract in the second quarter of 2022. This would mean that we would profit off of any increase in price in the near-term and price decreases following the winter months, aligning with our market view.
We have also considered a strategy involving the crack spread where we would be long ULSD and short CL with the expectation that heightened demand in ULSD will increase the crack spread. This would also allow for possible changes in CL prices in the case that OPEC or US producers increased the supply of CL leading to decreases in the prices of both commodities. With the belief that demand and supply in the short-term for ULSD is relatively inelastic we would expect that price for ULSD to fall at a slower rate than CL in the near-term and for that difference in spread to balance out in the longer term following the holiday season.
From our analysis of days of supply and various strategies we found that only a few strategies appears to show some form of relationship with days of supply. There does not appear to be a discernible relationship between flat price and days of supply other than the slight lag consistent with producers stockpiling inventories at lower ULSD prices to profit off of future price increases. Time spreads appear to be at their most extreme during the first quarter of the year which is consistent with changes in seasonality at the end of winter. There does appear to be an inverse relationship between days of supply and time-spreads that can be observed when time spreads spike. In the cases of the 2014 and 2015 spikes in time spreads to the double digit range supplies reached a trough before building up again following the winter months. There also appears to be an inverse relationship between the crack spread and the number of days of supply. Generally, when days of supply of ULSD is high the crack spread is low which makes sense as large inventories of ULSD would decrease the price of ULSD relative to CL. Days of supply peaked during the early parts of the COVID-19 Pandemic and corresponds to a steep decline in the crack spread.
Given our market view that inventories will be pressured in the short-term due to lack of inventory builds prior to the winter we expect to see increases in both the crack and time spreads. At the time of writing the U.S. has roughly 31 days of supply and with the belief that this could go lower during the winter months if export reductions are not significant enough we could expect to see sub-30 days of supply which corresponds to crack spreads upwards of $26 in recent years and time spreads which could reach the low-to-mid teen range if demand is especially high during the end of the winter when inventories have been run down.
Below are the charts used to determine the volatility and possible payoffs based on the three different monetization strategies. These focus on monetizing the March and April market call where we expect price appreciation of ULSD later in the winter months.
Based on the distributions of each strategy it appears that the flat price strategy has the highest risk and the March - April 2022 time spread strategy has the lowest risk. The crack spread has much more moderate risk compared to the flat price strategy but has a much wider distribution than the time spread strategy.
We feel that the distribution and risk of the flat price strategy is too high for making trades and that the other two strategies have much more reasonable risk distributions. At this time we are comfortable starting with a higher risk, higher reward crack spread strategy and we will likely include the lower risk time spread strategy as a later trade. The crack spread strategy also exposes us to changes in the price of CL which contributes to the higher risk but also provides us the opportunity to benefit from possible increases in the supply of CL and the subsequent decrease in CL prices.
The above charts are illustrating the relationship between contract volatility and the time to delivery of the contract. The most volatile contract is the front contract and as time to delivery increases the price volatility of the contract decreases. In the longer-term supply and demand are more elastic meaning that consumers and producers can change their behaviors leading to more moderate price changes farther down the curve. In the near-term demand and supply are more inelastic so price changes are more volatile in response to immediate inventory levels and demand swings. Correlations between ULSD contracts are larger when the contract delivery dates are closer together and smaller when delivery times are farther apart. This means that time has a mitigating effect on the near-term price volatility of ULSD as closer contracts will move in line with one another but farther out contracts will not experience price volatility to the same extent.
The first trade that we will be executing will be a crack spread strategy for March in which we are long ULSD and short CL. From our supply demand balance production of ULSD is quite inelastic in the short term and that and increases in domestic U.S. supply will have to be the result of a decrease in exports. Only slight and temporary decreases in exports are expected prior to the winter season so it is not likely that domestic inventories will build up enough to meet demand into the late winter. There was no build up of inventories in the Summer as would be typically suspected resulting in lower inventories going into the Fall with moderate draws of inventory already being realized leading to lower days of supply. We believe that higher demand during the winter season will be fueled by residential heating oil demand and freight transport needs over the holiday season with a continued effort to resolve U.S. supply chain bottlenecks leading to higher than average demand for ULSD. This will leads to draws on inventory which we anticipate will cause the crack spread between ULSD and CL to widen near to February and March as inventories have historically bottomed in those months. The relationship between days of supply and the crack spread appeared to be inverse in historical periods so based on our belief that we will see moderately lower days of inventory in the late winter we expect to profit off the widening of the crack spread. EIA forecasts show that inventories will be at their lowest point for the winter season in March and April which is why we decided to play the March crack spread.
This will be a longer term strategy that we would expect to pay off closer to the end of March depending on the severity of the winter weather at that time. We do expect to profit off of this trade as we move closer to March and as days of supply decrease after the initial builds due to the decline in ULSD exports.
Currently the crack spread for March 2022 is ~24 dollars per barrel which we believe is quite low given our expectations of continued inventory draws and lower days of supply during the Winter making the current spread an attractive entry point. Comparable days of supply to today have realized historical crack spreads between ~26 to ~40 dollars depending on the severity of the winter making this trade quite attractive. Trade exit would take place at a price in this range unless market conditions change materially. This trade will involve 15 contracts for both ULSD and CL.
For each strategy:
What have you learned from this project?
From the above scatterplot it does not appear that there is a clear linear relationship between ULSD demand and the winter months. Heating degree days tend to be concentrated together based on the month so the number of HDD in a month is fairly consistent each year.
##
## Call:
## lm(formula = Demand ~ 0 + HDD, data = x)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.49379 -0.16638 -0.01191 0.09839 0.52444
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## HDD 6.604e-05 1.252e-04 0.527 0.6
##
## Residual standard error: 0.2124 on 63 degrees of freedom
## Multiple R-squared: 0.004397, Adjusted R-squared: -0.01141
## F-statistic: 0.2782 on 1 and 63 DF, p-value: 0.5997
## # A tibble: 2 x 10
## series trend_strength seasonal_strengt~ seasonal_peak_ye~ seasonal_trough~
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 eia.mdist~ 0.845 0.701 29 4
## 2 STL Stats 0.845 0.701 29 4
## # ... with 5 more variables: spikiness <dbl>, linearity <dbl>, curvature <dbl>,
## # stl_e_acf1 <dbl>, stl_e_acf10 <dbl>
From the STL analysis it appears that there is some consistent seasonality in the days of supply of ULSD. This seasonality appears to be quite strong and appears to coincide with months earlier in the year which is consistent with higher demand in the late winter leading to declines in days of supply. Days of supply appears to decline from January into March and then increases during the spring and summer as heating needs decline. This relationship appears to be consistent between years with the exception of 2020 as COVID-19 led to major unexpected increases in ULSD inventories.
##
## Call:
## lm(formula = HO_c1c2_Spd ~ splines::bs(Days_Supply, knots = c(30,
## 35), degree = 3, intercept = FALSE), data = c1c2_Reg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.78311 -0.12385 -0.00016 0.20327 1.23811
##
## Coefficients:
## Estimate
## (Intercept) 0.02162
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)1 0.56479
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)2 -0.14637
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)3 0.22324
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)4 -1.09864
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)5 -0.70738
## Std. Error
## (Intercept) 0.11123
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)1 0.18171
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)2 0.11379
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)3 0.15285
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)4 0.15423
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)5 0.13939
## t value
## (Intercept) 0.194
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)1 3.108
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)2 -1.286
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)3 1.460
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)4 -7.123
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)5 -5.075
## Pr(>|t|)
## (Intercept) 0.84595
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)1 0.00196
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)2 0.19872
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)3 0.14460
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)4 2.54e-12
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)5 4.93e-07
##
## (Intercept)
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)1 **
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)2
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)3
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)4 ***
## splines::bs(Days_Supply, knots = c(30, 35), degree = 3, intercept = FALSE)5 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.3459 on 728 degrees of freedom
## Multiple R-squared: 0.392, Adjusted R-squared: 0.3879
## F-statistic: 93.89 on 5 and 728 DF, p-value: < 2.2e-16
The prediction below was used in determining the reasonability of our trade on November 1st. We used the most recently reported days of supply, 30.4 days, and the above regression to get a sense of the range of values for the time spread.
## fit lwr upr
## 1 0.09329111 -0.8023982 0.9889804
The confidence interval on the regression is much larger than we would have expected but is likely caused by outlier values realized in 2020 during the COVID-19 Pandemic. Using the regression results between the ULSD time spread and days of supply we can assess if the current time spread is reasonable based on the most recent reported days of supply. In this case the most recent values for days of supply is 30.4. When inputting this into the regression we find that the reasonable spread given a 99% confidence interval is between -0.81 and 0.96 while the current spread is roughly $0.64. The current market spread is within the confidence interval but is on the higher side of the distribution meaning that there is a smaller amount of upside potential based on the current days of supply and the regression. With the expectation that days of supply will continue to decrease we could reasonably see more significant upside from a long time spread strategy.
The prediction below was used in determining the reasonability of our previous November 1st trade. We used the most recently reported days of supply, 32.3 days, and the previous regression to get a sense of the range of values for the time spread.
## fit lwr upr
## 1 -0.01483094 -0.9098085 0.8801466
Using the regression results between the ULSD time spread and days of supply we can assess if the current time spread is reasonable based on the most recent reported days of supply. In this case the most recent values for days of supply is 32.3. When inputting this into the regression we find that the reasonable spread given a 99% confidence interval is between -0.916 and 0.868 while the current spread is roughly $0.57. The current market spread is within the confidence interval but is on the higher side of the distribution meaning that there is a smaller amount of upside potential based on the current days of supply and the regression. With inventories building in the near-term going into winter it is likely that days of supply will increase further decreasing any potential upside. With the likely decreasing upside we have decided to reverse our trade and instead take a short-position in the time spread.
## # A tibble: 21 x 4
## series date value product
## <chr> <date> <dbl> <chr>
## 1 P1 2021-03-31 77296 distillates
## 2 P1 2020-03-31 75111 distillates
## 3 P1 2019-03-31 75663 distillates
## 4 P1 2019-09-30 76126 distillates
## 5 P1 2018-03-31 80439 distillates
## 6 P1 2018-09-30 78596 distillates
## 7 P1 2017-03-31 82193 distillates
## 8 P1 2017-09-30 82044 distillates
## 9 P1 2016-03-31 78768 distillates
## 10 P1 2016-09-30 82013 distillates
## # ... with 11 more rows
The stock for distillate in East Coast (PADD 1) accounts for the largest number and fluctuate seasonally. The only available data of capacity we can get from EIA API is from PADD 1, and no more information from any other PADDs. We can reasonably simplify our model by focus on the data in PADD 1 only.
## # A tibble: 554 x 3
## date stock capacity
## <date> <dbl> <dbl>
## 1 2011-04-01 51627 83423
## 2 2011-04-08 51075 83423
## 3 2011-04-15 52201 83423
## 4 2011-04-22 50382 83423
## 5 2011-04-29 49768 83423
## 6 2011-05-06 50411 83423
## 7 2011-05-13 50807 83423
## 8 2011-05-20 51276 83423
## 9 2011-05-27 51203 83423
## 10 2011-06-03 50944 83423
## # ... with 544 more rows
The spread here means the difference between Capacity and Stock (capacity-stock)
## # A tibble: 148 x 5
## date spread[,1] HO_c1c2_Spd[,1] HO_Apr22_Mar22_Spd[,1] HO_Crack_Spd[,1]
## <date> <dbl> <dbl> <dbl> <dbl>
## 1 2018-11-30 0.676 1.39 -0.507 1.25
## 2 2018-12-07 0.871 0.844 -0.419 1.35
## 3 2018-12-14 0.974 0.680 -0.419 1.23
## 4 2018-12-21 1.03 0.801 -0.419 1.04
## 5 2018-12-28 0.825 0.551 -0.571 0.919
## 6 2019-01-04 0.567 0.830 -0.634 0.928
## 7 2019-01-11 0.212 0.809 -0.634 1.24
## 8 2019-01-18 0.284 0.780 -0.634 1.42
## 9 2019-01-25 0.201 0.616 -0.634 1.28
## 10 2019-02-01 0.488 0.630 -0.634 1.42
## # ... with 138 more rows
It looks like the Time Spread(HO_01 vs HO_02) does not have good trend with our spread. While, we do not trade on continuous spread but on the real contracts. Then the Crack Spread and the Time Spread(Apr22 vs Mar22) would be check.
##
## Call:
## stats::lm(formula = HO_Crack_Spd ~ as.vector(spread), data = df_join_all)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.63650 -0.53137 0.01898 0.51243 1.47925
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -3.963e-17 5.132e-02 0.0 1
## as.vector(spread) 7.829e-01 5.149e-02 15.2 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.6243 on 146 degrees of freedom
## Multiple R-squared: 0.6129, Adjusted R-squared: 0.6102
## F-statistic: 231.1 on 1 and 146 DF, p-value: < 2.2e-16
The result above indicates that the regression between HO_Crack_Spd ~ spread is really significant since F-statistic = 231.1 and R-squared = 0.6102.
##
## Call:
## stats::lm(formula = HO_Apr22_Mar22_Spd ~ as.vector(spread), data = df_join_all)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.55692 -0.46246 0.03932 0.46451 2.99194
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -1.819e-16 7.351e-02 0.00 1
## as.vector(spread) 4.536e-01 7.376e-02 6.15 7.07e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8943 on 146 degrees of freedom
## Multiple R-squared: 0.2057, Adjusted R-squared: 0.2003
## F-statistic: 37.82 on 1 and 146 DF, p-value: 7.07e-09
The result above indicates that the regression between HO_Apr22_Mar22_Spd ~ spread is little less significantly since F-statistic = 37.82 and R-squared = 0.2003.
As a result, the spread could be a reasonable variable to trade on crack spread based on the spread between stock and capacity.
## fit lwr upr
## 1 0.3818986 -1.254367 2.018165
## # A tibble: 148 x 5
## date spread[,1] HO_c1c2_Spd[,1] HO_Apr22_Mar22_Spd[,1] HO_Crack_Spd[,1]
## <date> <dbl> <dbl> <dbl> <dbl>
## 1 2018-11-30 0.676 1.39 -0.507 1.25
## 2 2018-12-07 0.871 0.844 -0.419 1.35
## 3 2018-12-14 0.974 0.680 -0.419 1.23
## 4 2018-12-21 1.03 0.801 -0.419 1.04
## 5 2018-12-28 0.825 0.551 -0.571 0.919
## 6 2019-01-04 0.567 0.830 -0.634 0.928
## 7 2019-01-11 0.212 0.809 -0.634 1.24
## 8 2019-01-18 0.284 0.780 -0.634 1.42
## 9 2019-01-25 0.201 0.616 -0.634 1.28
## 10 2019-02-01 0.488 0.630 -0.634 1.42
## # ... with 138 more rows
Here we can put the current spread value into the regression function to predict the HO_Crack_spread and compare that with the realistic level to decide long or short the crack spread.